As an algorithm for enlarging an image so as to generate an enlarged image, fast curvature-based interpolation (FCBI), bicubic interpolation, new edge-directed interpolation (NEDI), and the like are known.
FCBI is an algorithm for performing image enlargement in which an input image is enlarged. Interpolation is performed in consideration of the edge direction of an image, and therefore image enlargement whereby an edge is not crushed can be performed.
In processing for generating an enlarged image, a graphics processing unit (GPU) maybe used instead of a central processing unit (CPU) in order to perform high-speed processing.
An image enlarging device is known that is capable of generating a satisfactory enlarged image without increasing blurring or generating an isolated point (see, for example, Patent Document 1).
The GPU has a hierarchical memory structure. As an example, the GPU includes a global memory having a slow access speed, a shared memory that has an access speed higher than the speed of the global memory, and a register that has an access speed higher than the speed of the global memory.
In a case in which the GPU generates an enlarged image by using FCBI, when a pixel value of an interpolation pixel of the enlarged image is calculated, many pieces of data are obtained from a global memory in which an image to be enlarged has been stored in order to calculate a gradient value used to determine the direction of an edge. Therefore, there is a problem wherein it takes time to generate the enlarged image.    [Patent Document 1] Japanese Laid-open Patent Publication No. 2010-39672    [Patent Document 2] Japanese Laid-open Patent Publication No. 2007-65039    [Patent Document 3] Japanese Laid-open Patent Publication No. 8-251400